该接口用于通过 SSE(Server - Sent Events)方式发送聊天消息并接收大模型处理的流程和结果。
出于安全考虑,必须将 TOKEN 存储于服务端并通过后端接口调用,避免在前端代码中直接暴露,以防止凭证泄露造成损失
请在 HTTP 请求的 请求参数中携带 token,见 请求参数:
TOKEN获取可通过 个人令牌 和 OAuth 应用获取,具体见 个人令牌授权,OAuth 授权码授权
应用秘钥private_key 的获取具体见 生成应用密钥
http://IP:PORT/api/v1/chat/flow/sse/apiPOSTContent-Type: application/json[](空数组表示没有聊天历史)。{}(空对象表示没有表单数据)。"hello",建议不要传入过长的文本。例如 [](空数组表示没有文件上传)。"xxx"。"xxx"。true启用,false不启用true开启思考,false关闭思考说明:role字段的值为user对应为用户提问,为ai则对应回答,聊天记录传入必须要成对的传入,即一个用户问题对应一个ai回答,建议chat_history数组长度约束成20,即10轮上下文对话(具体结合模型上下文长度)
说明:高级变量中上传文件、上传图片的数据结构是数组,需要先调取附件上传 接口,然后将全部返回内容封装成数组放入参数中,其余都为字符串,即使在编排页面创建了多个表单,仍需将对应每个高级表单的字段全部放在一个集合中,即全部封装传入到form中,表单中高级字段对应的key值可以通过以下操作获取 登录进入对应智能体平台->进入要调用的智能体的编排界面->点击开始节点中对应表单的编辑按钮->点击预览按钮->填入对应字段值->点击获取数据按钮->复制即可
说明:文件上传需要先调用 附件上传 接口,然后将全部返回内容封装成数组放入参数中。图片目前只支持通过form字段传入解析
响应是服务器发送的事件流,每个事件由以下部分组成:
workflow 表示工作流相关事件,end 表示结束事件。当 event 为 workflow 时,data 的结构如下:
"genericNode-07854"。"开始" 或 "大模型_1"。start 表示开始节点,llm 表示大语言模型节点,content 表示内容节点等。start 表示开始类别,content 表示内容类别,end 表示结束类别等。"1.44s"。{}(空对象表示没有额外信息)。"Hello! How can I help you today? Is there anything specific you would like to know or discuss?"。"2cbff977-cc92-4cf8-aed2-1bc2eaab0eae"。"Hello"、"!" 等表示大模型生成的部分输出内容。当 event 为 end 时,data 的结构如下:
end,表示整个流程结束。only_id 对应,用于关联结束事件与之前的工作流事件。"Hello! How can I help you today? Is there anything specific you would like to know or discuss?"。{refer_picture: [], knowledge_source: [], refer_paragraph: []}。[](空数组表示没有文件)。{}(空对象表示没有 URL 配置)。"xxx"。服务器会发送一系列事件流作为响应,例如:
chat_id、private_key 和 token 等关键字段正确无误,否则可能导致请求失败或未授权访问。private_key 和 token 等关键字段的获取需要前往扳手AI平台 智能体-调用-应用API-KEY 和智能体-调用-认证授权-KEY分别获取